package com.internetCafes.spms.web.customer.entity.customer;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * <p>
 * 客户信息表
 * </p>
 *
 * @author Zj
 * @since 2021-10-20
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("x_customer")
public class Customer implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 客户类别 1-成交客户 2-意向客户 3-一般客户
     */
    private Integer typeId;

    /**
     * 是否是企业客户 0-默认 1-企业客户
     */
    private Integer enterpriseFlag;

    /**
     * 是否老客户 0-否 1-是
     */
    private Integer regularFlag;

    /**
     * 来源途径 1-企业考生（输入企业名称）、2-考生介绍、3-公众号、4-陌生电话、5-其他（自己输入）
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Integer originTag;

    /**
     * 来源途径内容
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String originRemark;

    /**
     * 邮寄地址
     */
    private String mailingAddress;

    /**
     * 近期重点客户标签 0-默认 1-近期重点客户
     */
    private Integer mainlyFlag;

    /**
     * 市id
     */
    private Long cityId;

    /**
     * 区id
     */
    private Long areaId;

    /**
     * 详细地址
     */
    private String addressDetail;

    /**
     * 名称/姓名
     */
    private String name;

    /**
     * 信用代码
     */
    private String certificateCode;

    /**
     * 联系人姓名
     */
    private String contactsName;

    /**
     * 联系人职位
     */
    private String contactsPosition;

    /**
     * 联系人手机号
     */
    private String contactsMobile;

    /**
     * 联系人微信号
     */
    private String contactsWechat;

    /**
     * 联系人身份证号
     */
    private String contactsIdCard;

    /**
     * 更进人id
     */
    private Long followUserId;

    /**
     * 今年成交标签 0-未成交 1-已成交
     */
    private Integer thisYearDealFlag;

    /**
     * 去年成交标签 0-未成交 1-已成交
     */
    private Integer lastYearDealFlag;

    /**
     * 法人姓名
     */
    private String legalName;

    /**
     * 法人手机号
     */
    private String legalMobile;

    /**
     * 备注
     */
    private String remark;

    /**
     * 安全许可证编码
     */
    private String securityLicenseCode;

    /**
     * 安全许可证到期日期
     */
    private Date securityLicenseExpiryDate;

    /**
     * 安全许可证照图片
     */
    private String securityLicenseImageUrl;

    /**
     * 刪除标签 0-默认 1-已删除
     */
    @TableLogic(value = "0", delval = "1")
    private Integer delFlag;

    /**
     * 创建者id 引用t_user_info表
     */
    @TableField(fill = FieldFill.INSERT)
    private Long createBy;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 更新人id 引用t_user_info表
     */
    @TableField(fill = FieldFill.UPDATE)
    private Long updateBy;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.UPDATE)
    private Date updateTime;

    /**
     * 企业id 引用t_tenant_info表
     */
    private Long tenantId;

    /**
     * 评定等级标签 1-A 2-B 3-C
     */
    private Integer ratingId;

    /**
     * 不需要客户标签（E类标签标注）
     */
    private Integer unNecessaryFlag;

    /**
     * 资质项id列表
     */
    @TableField(exist = false)
    private List<Long> qualiIdList;

}
